fix: Windows install bugs + CRLF line ending enforcement#78
Merged
Lightheartdevs merged 2 commits intomainfrom Mar 9, 2026
Merged
fix: Windows install bugs + CRLF line ending enforcement#78Lightheartdevs merged 2 commits intomainfrom
Lightheartdevs merged 2 commits intomainfrom
Conversation
Windows Git's core.autocrlf converts LF→CRLF on checkout, which breaks shell shebangs inside Linux Docker containers. The kernel reads #!/bin/sh\r and fails with "no such file or directory". Add .gitattributes to enforce eol=lf for .sh, .yaml, Dockerfile, and other files that run in Linux contexts. Convert all existing shell scripts from CRLF to LF. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Three bugs discovered by running the installer on a fresh clone: 1. install.ps1 parameter forwarding: ValueFromRemainingArguments with array splatting mangles switch params (-DryRun) into positional strings that land in $Tier. Replace with matching param declarations and @PSBoundParameters hashtable splatting. 2. OpenClaw --bind: revert PR #67's --bind localhost (invalid value) back to --bind lan. Inside a container, loopback binding breaks Docker port forwarding. Security is already enforced by the 127.0.0.1 prefix on the host port mapping. 3. Health check timeout: increase from 30 to 60 attempts (60s→120s) to accommodate large model load times (18GB GGUF on first boot). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
yasinBursali
added a commit
to yasinBursali/DreamServer
that referenced
this pull request
Mar 21, 2026
…ulting to 'change-me'
The SECRET_KEY was defaulting to the well-known string 'change-me' via
${:-change-me}, allowing session/CSRF token forgery. Switch to ${:?...}
so compose fails fast when the variable is unset, forcing the deployer
to generate a proper secret.
Closes Light-Heart-Labs#78
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Lightheartdevs
pushed a commit
that referenced
this pull request
Mar 23, 2026
…ulting to 'change-me' (#526) The SECRET_KEY was defaulting to the well-known string 'change-me' via ${:-change-me}, allowing session/CSRF token forgery. Switch to ${:?...} so compose fails fast when the variable is unset, forcing the deployer to generate a proper secret. Closes #78 Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Full Windows install test on a fresh clone revealed three bugs that crash the installer or its services. All verified fixed with 16/16 containers healthy.
ValueFromRemainingArguments+ array splatting passes-DryRunas a positional string to$Tier, crashing with "Invalid tier: -DRYRUN". Fixed with matching param declarations +@PSBoundParametershashtable splatting.--bind lan→--bind localhost(invalid value).--bind loopbackalso fails because container-internal loopback breaks Docker port forwarding. Reverted to--bind lan— security is already enforced by127.0.0.1:7860:18789host port mapping..shfile in the repo gets CRLF line endings on Windows checkout (core.autocrlf). Any script bind-mounted into a Docker container crashes withexec: no such file or directorybecause the kernel reads#!/bin/sh\r. Added.gitattributesenforcingeol=lffor.sh,.yaml,Dockerfile*.Test plan
install.ps1 -DryRunpasses all 6 phases (was crashing at tier-map.ps1:99)-All: 16/16 containers healthy🤖 Generated with Claude Code